<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>st-theme-context</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
<link rel="home" href="index.html" title="St Reference Manual">
<link rel="up" href="styling.html" title="Styling">
<link rel="prev" href="st-st-theme.html" title="st-theme">
<link rel="next" href="st-st-theme-node.html" title="st-theme-node">
<meta name="generator" content="GTK-Doc V1.18.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="st-st-theme.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="styling.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">St Reference Manual</th>
<td><a accesskey="n" href="st-st-theme-node.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#st-st-theme-context.synopsis" class="shortcut">Top</a>
                   | 
                  <a href="#st-st-theme-context.description" class="shortcut">Description</a>
</td></tr>
</table>
<div class="refentry">
<a name="st-st-theme-context"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="st-st-theme-context.top_of_page"></a>st-theme-context</span></h2>
<p>st-theme-context — holds global information about a tree of styled objects</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="st-st-theme-context.synopsis"></a><h2>Synopsis</h2>
<pre class="synopsis">                    <a class="link" href="st-st-theme-context.html#StThemeContextClass" title="StThemeContextClass">StThemeContextClass</a>;
const <span class="returnvalue">PangoFontDescription</span> * <a class="link" href="st-st-theme-context.html#st-theme-context-get-font" title="st_theme_context_get_font ()">st_theme_context_get_font</a>  (<em class="parameter"><code><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> *context</code></em>);
<a class="link" href="st-st-theme-node.html#StThemeContext"><span class="returnvalue">StThemeContext</span></a> *    <a class="link" href="st-st-theme-context.html#st-theme-context-get-for-stage" title="st_theme_context_get_for_stage ()">st_theme_context_get_for_stage</a>      (<em class="parameter"><code><span class="type">ClutterStage</span> *stage</code></em>);
<span class="returnvalue">double</span>              <a class="link" href="st-st-theme-context.html#st-theme-context-get-resolution" title="st_theme_context_get_resolution ()">st_theme_context_get_resolution</a>     (<em class="parameter"><code><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> *context</code></em>);
<a class="link" href="st-st-theme-node.html#StThemeNode"><span class="returnvalue">StThemeNode</span></a> *       <a class="link" href="st-st-theme-context.html#st-theme-context-get-root-node" title="st_theme_context_get_root_node ()">st_theme_context_get_root_node</a>      (<em class="parameter"><code><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> *context</code></em>);
<a class="link" href="st-st-theme-node.html#StTheme"><span class="returnvalue">StTheme</span></a> *           <a class="link" href="st-st-theme-context.html#st-theme-context-get-theme" title="st_theme_context_get_theme ()">st_theme_context_get_theme</a>          (<em class="parameter"><code><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> *context</code></em>);
<a class="link" href="st-st-theme-node.html#StThemeContext"><span class="returnvalue">StThemeContext</span></a> *    <a class="link" href="st-st-theme-context.html#st-theme-context-new" title="st_theme_context_new ()">st_theme_context_new</a>                (<em class="parameter"><code><span class="type">void</span></code></em>);
<span class="returnvalue">void</span>                <a class="link" href="st-st-theme-context.html#st-theme-context-set-default-resolution" title="st_theme_context_set_default_resolution ()">st_theme_context_set_default_resolution</a>
                                                        (<em class="parameter"><code><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> *context</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="st-st-theme-context.html#st-theme-context-set-font" title="st_theme_context_set_font ()">st_theme_context_set_font</a>           (<em class="parameter"><code><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> *context</code></em>,
                                                         <em class="parameter"><code>const <span class="type">PangoFontDescription</span> *font</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="st-st-theme-context.html#st-theme-context-set-resolution" title="st_theme_context_set_resolution ()">st_theme_context_set_resolution</a>     (<em class="parameter"><code><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> *context</code></em>,
                                                         <em class="parameter"><code><span class="type">gdouble</span> resolution</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="st-st-theme-context.html#st-theme-context-set-theme" title="st_theme_context_set_theme ()">st_theme_context_set_theme</a>          (<em class="parameter"><code><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> *context</code></em>,
                                                         <em class="parameter"><code><a class="link" href="st-st-theme-node.html#StTheme"><span class="type">StTheme</span></a> *theme</code></em>);
</pre>
</div>
<div class="refsect1">
<a name="st-st-theme-context.description"></a><h2>Description</h2>
<p>
<a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> is responsible for managing information global to a tree of styled objects,
such as the set of stylesheets or the default font. In normal usage, a <a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a>
is bound to a <span class="type">ClutterStage</span>; a singleton <a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> can be obtained for a <span class="type">ClutterStage</span>
by using <a class="link" href="st-st-theme-context.html#st-theme-context-get-for-stage" title="st_theme_context_get_for_stage ()"><code class="function">st_theme_context_get_for_stage()</code></a>.
</p>
</div>
<div class="refsect1">
<a name="st-st-theme-context.details"></a><h2>Details</h2>
<div class="refsect2">
<a name="StThemeContextClass"></a><h3>StThemeContextClass</h3>
<pre class="programlisting">typedef struct _StThemeContextClass StThemeContextClass;</pre>
</div>
<hr>
<div class="refsect2">
<a name="st-theme-context-get-font"></a><h3>st_theme_context_get_font ()</h3>
<pre class="programlisting">const <span class="returnvalue">PangoFontDescription</span> * st_theme_context_get_font  (<em class="parameter"><code><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> *context</code></em>);</pre>
<p>
Gets the default font for the theme context. See <a class="link" href="st-st-theme-context.html#st-theme-context-set-font" title="st_theme_context_set_font ()"><code class="function">st_theme_context_set_font()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>context</code></em> :</span></p></td>
<td>a <a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>the default font for the theme context.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="st-theme-context-get-for-stage"></a><h3>st_theme_context_get_for_stage ()</h3>
<pre class="programlisting"><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="returnvalue">StThemeContext</span></a> *    st_theme_context_get_for_stage      (<em class="parameter"><code><span class="type">ClutterStage</span> *stage</code></em>);</pre>
<p>
Gets a singleton theme context associated with the stage.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>stage</code></em> :</span></p></td>
<td>a <span class="type">ClutterStage</span>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>the singleton theme context for the stage. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="st-theme-context-get-resolution"></a><h3>st_theme_context_get_resolution ()</h3>
<pre class="programlisting"><span class="returnvalue">double</span>              st_theme_context_get_resolution     (<em class="parameter"><code><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> *context</code></em>);</pre>
<p>
Gets the current resolution of the theme context.
See <a class="link" href="st-st-theme-context.html#st-theme-context-set-resolution" title="st_theme_context_set_resolution ()"><code class="function">st_theme_context_set_resolution()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>context</code></em> :</span></p></td>
<td>a <a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>the resolution (in dots-per-"inch")</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="st-theme-context-get-root-node"></a><h3>st_theme_context_get_root_node ()</h3>
<pre class="programlisting"><a class="link" href="st-st-theme-node.html#StThemeNode"><span class="returnvalue">StThemeNode</span></a> *       st_theme_context_get_root_node      (<em class="parameter"><code><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> *context</code></em>);</pre>
<p>
Gets the root node of the tree of theme style nodes that associated with this
context. For the node tree associated with a stage, this node represents
styles applied to the stage itself.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>context</code></em> :</span></p></td>
<td>a <a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>the root node of the context's style tree. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="st-theme-context-get-theme"></a><h3>st_theme_context_get_theme ()</h3>
<pre class="programlisting"><a class="link" href="st-st-theme-node.html#StTheme"><span class="returnvalue">StTheme</span></a> *           st_theme_context_get_theme          (<em class="parameter"><code><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> *context</code></em>);</pre>
<p>
Gets the default theme for the context. See <a class="link" href="st-st-theme-context.html#st-theme-context-set-theme" title="st_theme_context_set_theme ()"><code class="function">st_theme_context_set_theme()</code></a>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>context</code></em> :</span></p></td>
<td>a <a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>the default theme for the context. <span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="st-theme-context-new"></a><h3>st_theme_context_new ()</h3>
<pre class="programlisting"><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="returnvalue">StThemeContext</span></a> *    st_theme_context_new                (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>
Create a new theme context not associated with any <span class="type">ClutterStage</span>.
This can be useful in testing scenarios, or if using StThemeContext
with something other than <span class="type">ClutterActor</span> objects, but you generally
should use <a class="link" href="st-st-theme-context.html#st-theme-context-get-for-stage" title="st_theme_context_get_for_stage ()"><code class="function">st_theme_context_get_for_stage()</code></a> instead.
</p>
</div>
<hr>
<div class="refsect2">
<a name="st-theme-context-set-default-resolution"></a><h3>st_theme_context_set_default_resolution ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                st_theme_context_set_default_resolution
                                                        (<em class="parameter"><code><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> *context</code></em>);</pre>
<p>
Sets the resolution of the theme context to the default value of 96.
See <a class="link" href="st-st-theme-context.html#st-theme-context-set-resolution" title="st_theme_context_set_resolution ()"><code class="function">st_theme_context_set_resolution()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>context</code></em> :</span></p></td>
<td>a <a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a>
</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="st-theme-context-set-font"></a><h3>st_theme_context_set_font ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                st_theme_context_set_font           (<em class="parameter"><code><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> *context</code></em>,
                                                         <em class="parameter"><code>const <span class="type">PangoFontDescription</span> *font</code></em>);</pre>
<p>
Sets the default font for the theme context. This is the font that
is inherited by the root node of the tree of theme nodes. If the
font is not overriden, then this font will be used. If the font is
partially modified (for example, with 'font-size: 110%', then that
modification is based on this font.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>context</code></em> :</span></p></td>
<td>a <a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>font</code></em> :</span></p></td>
<td>the default font for theme context</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="st-theme-context-set-resolution"></a><h3>st_theme_context_set_resolution ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                st_theme_context_set_resolution     (<em class="parameter"><code><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> *context</code></em>,
                                                         <em class="parameter"><code><span class="type">gdouble</span> resolution</code></em>);</pre>
<p>
Sets the resolution of the theme context. This is the scale factor
used to convert between points and the length units pt, in, and cm.
This does not necessarily need to correspond to the actual number
resolution of the device. A value of 72. means that points and
pixels are identical. The default value is 96.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>context</code></em> :</span></p></td>
<td>a <a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>resolution</code></em> :</span></p></td>
<td>resolution of the context (number of pixels in an "inch")</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="st-theme-context-set-theme"></a><h3>st_theme_context_set_theme ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                st_theme_context_set_theme          (<em class="parameter"><code><a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a> *context</code></em>,
                                                         <em class="parameter"><code><a class="link" href="st-st-theme-node.html#StTheme"><span class="type">StTheme</span></a> *theme</code></em>);</pre>
<p>
Sets the default set of theme stylesheets for the context. This theme will
be used for the root node and for nodes descending from it, unless some other
style is explicitely specified.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>context</code></em> :</span></p></td>
<td>a <a class="link" href="st-st-theme-node.html#StThemeContext"><span class="type">StThemeContext</span></a>
</td>
</tr></tbody>
</table></div>
</div>
</div>
</div>
<div class="footer">
<hr>
          Generated by GTK-Doc V1.18.1</div>
</body>
</html>